home *** CD-ROM | disk | FTP | other *** search
- /* Copyright (C) 1992-2001 by Digital Mars. $Revision: 1.1.1.1 $ */
- #if __SC__ || __RCC__
- #pragma once
- #endif
-
- #ifndef __PAGE_H
- #define __PAGE_H 1
-
- #if __cplusplus
- extern "C" {
- #endif
-
- #if __INTSIZE == 4
- #define __BF
- #else
- #define __BF far
- #endif
-
- #define __PGOFF sizeof(unsigned short)
-
- #pragma pack(1)
-
- struct Pageheader
- {
- unsigned short pagesize;
- unsigned short maxsize;
- unsigned short allocp;
- unsigned short bassize;
- unsigned short baslnk;
- };
-
- #pragma pack()
-
- #define PAGEOVERHEAD sizeof(struct Pageheader)
-
- unsigned __cdecl page_calloc(void __BF *baseptr,unsigned size);
- unsigned __cdecl page_malloc(void __BF *baseptr,unsigned size);
- unsigned __cdecl page_realloc(void __BF *baseptr,unsigned p, unsigned nbytes);
- int __cdecl page_free(void __BF *baseptr,unsigned p);
- unsigned __cdecl page_maxfree(void __BF *baseptr);
- unsigned __cdecl page_initialize(void __BF *baseptr,unsigned pagesize);
- #define page_size(baseptr,p) \
- (*(unsigned short __BF *)((char __BF *)(baseptr) + (p) - __PGOFF) - __PGOFF)
- #define page_toptr(baseptr,p) (void __BF *)((char __BF *)(baseptr) + (p))
-
- #if __cplusplus
- }
- #endif
-
- #endif
-